/**
 * edurender
 * er_types.h
 * (c) 2009 J. Brad Byrd
 */

#ifndef ER_TYPES_H
#define ER_TYPES_H

#include "../../include/edurender/er.h"

typedef struct ERColor4f
{
	ERfloat r;
	ERfloat g;
	ERfloat b;
	ERfloat a;
} ERColor4f;

typedef struct ERRgbaColor
{
	ERubyte r;
	ERubyte g;
	ERubyte b;
	ERubyte a;
} ERRgbaColor;

typedef struct ERBgrColor
{
	ERubyte b;
	ERubyte g;
	ERubyte r;
} ERBgrColor;

typedef struct ERVector2f
{
	ERfloat x;
	ERfloat y;		
} ERVector2f;

typedef struct ERVector3f
{
	ERfloat x;
	ERfloat y;
	ERfloat z;
} ERVector3f;

typedef struct ERVector4f
{
	ERfloat x;
	ERfloat y;
	ERfloat z;
	ERfloat w;
} ERVector4f;

typedef struct ERVector2i
{
	ERint x;
	ERint y;
} ERVector2i;

typedef struct ERVector3i
{
	ERint x;
	ERint y;
	ERint z;
} ERVector3i;

typedef struct ERMatrix4x4f
{
	ERfloat _00, _01, _02, _03;
	ERfloat _10, _11, _12, _13;
	ERfloat _20, _21, _22, _23;
	ERfloat _30, _31, _32, _33;
} ERMatrix4x4f;

#endif // ER_TYPES_H
